#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    // 开启定时器事件
    // 此处 timerId 是一个定时器的身份标识
    this->timerId = this->startTimer(1000);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::timerEvent(QTimerEvent *event)
{
    // 一个程序中可能存在不止一个定时器，因此需要判断触发的是哪个定时器
    if (event->timerId() == this->timerId)
    {
        int value = ui->lcdNumber->intValue();
        if (value <= 0)
        {
            // 停止定时器
            this->killTimer(this->timerId);
            return;
        }
        value -= 1;
        ui->lcdNumber->display(value);
    }
}

